package com.ruoyi.common.core.domain.business.waterManagement;

import java.math.BigDecimal;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.ruoyi.common.core.domain.BigDecimalSerializerTo2;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 水量在线监测站数据记录对象 wr_station_r
 *
 * @author hwd
 * @date 2023-02-20
 */
@Data
@TableName("wr_station_r")
public class WrStationR extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 测站代码 */
    private String statCd;

    /** 数据时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date chkTime;

    /** 瞬时流量 */
    @Excel(name = "瞬时流量")
    @JsonSerialize(using = BigDecimalSerializerTo2.class)
    private BigDecimal curFlow;

    /** 累计流量 */
    @Excel(name = "累计流量")
    @JsonSerialize(using = BigDecimalSerializerTo2.class)
    private BigDecimal sumFlow;

    /** 电池电压 */
    @Excel(name = "电池电压")
    private BigDecimal cellVolt;

    /** 信号强度 */
    @Excel(name = "信号强度")
    private BigDecimal signalSize;

    /** 测站状态 */
    @Excel(name = "测站状态")
    private String statFlag;

    /** 备注 */
    @Excel(name = "备注")
    private String statMark;


    /** 年 */
    @TableField(exist = false)
    private String yy;

    /** 月 */
    @TableField(exist = false)
    private String mm;

    /** 日 */
    @TableField(exist = false)
    private String dd;

    //上小时累计水量
    private BigDecimal lastSumFlow;

    /**
     * 上个小时时间
     */
    private Date lastChkTime;

    public void setStatCd(String statCd)
    {
        this.statCd = statCd;
    }

    public String getStatCd()
    {
        return statCd;
    }
    public void setChkTime(Date chkTime)
    {
        this.chkTime = chkTime;
    }

    public Date getChkTime()
    {
        return chkTime;
    }

    public BigDecimal getCurFlow() {
        return curFlow;
    }

    public void setCurFlow(BigDecimal curFlow) {
        this.curFlow = curFlow;
    }

    public BigDecimal getSumFlow() {
        return sumFlow;
    }

    public void setSumFlow(BigDecimal sumFlow) {
        this.sumFlow = sumFlow;
    }

    public BigDecimal getCellVolt() {
        return cellVolt;
    }

    public void setCellVolt(BigDecimal cellVolt) {
        this.cellVolt = cellVolt;
    }

    public BigDecimal getSignalSize() {
        return signalSize;
    }

    public void setSignalSize(BigDecimal signalSize) {
        this.signalSize = signalSize;
    }

    public String getYy() {
        return yy;
    }

    public void setYy(String yy) {
        this.yy = yy;
    }

    public String getMm() {
        return mm;
    }

    public void setMm(String mm) {
        this.mm = mm;
    }

    public String getDd() {
        return dd;
    }

    public void setDd(String dd) {
        this.dd = dd;
    }

    public void setStatFlag(String statFlag)
    {
        this.statFlag = statFlag;
    }

    public String getStatFlag()
    {
        return statFlag;
    }
    public void setStatMark(String statMark)
    {
        this.statMark = statMark;
    }

    public String getStatMark()
    {
        return statMark;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("statCd", getStatCd())
            .append("chkTime", getChkTime())
            .append("curFlow", getCurFlow())
            .append("sumFlow", getSumFlow())
            .append("cellVolt", getCellVolt())
            .append("signalSize", getSignalSize())
            .append("statFlag", getStatFlag())
            .append("statMark", getStatMark())
            .toString();
    }
}
